//
//  LCOne.swift
//  LeetCode
//
//  Created by migu on 2021/7/9.
//  Copyright © 2021 LBB. All rights reserved.
//  只出现一次的数字
//  给定一个非空整数数组，除了某个元素只出现一次以外，其余每个元素均出现两次。找出那个只出现了一次的元素。

import Foundation
class LCOne {
    func singleNumber(_ nums: [Int]) -> Int {
        // a ^ a = 0
        // a ^ 0 = a
        // a ^ b ^ b = a
        var num = 0
        for i in 0..<nums.count {
            num = num ^ nums[i];
        }
        return num
        
        for i in 0..<nums.count {
            let target:Int = nums[i]
            for j in 1..<nums.count {
                let num:Int = nums[j];
                if (target == num) {
                    break
                }
            }
            return target
        }

        return 0
    }
}
